namespace Vibstudio.NetConfigurator.Model
{
    #region Namespaces

    using System.Collections.Generic;

    #endregion

    public class NetConfig
    {
        #region Ctor(s)

        public NetConfig()
        {
        }

        public NetConfig(string applicationName,
                         string configurationID,
                         string configurationFileReferencePath,
                         List<ConfigurationSetting> configurationSections)
        {
            ApplicationName = applicationName;
            ConfigurationID = configurationID;
            ConfigurationFileReferencePath = configurationFileReferencePath;
            ConfigurationSettings = configurationSections;
        }

        #endregion

        #region Public Properties

        /// <summary>
        /// The name of application to be configured
        /// </summary>
        public string ApplicationName { get; set; }

        /// <summary>
        /// The ID of the configuration section associated with the application
        /// </summary>
        public string ConfigurationID { get; set; }

        /// <summary>
        /// The full path of the configuration file (app.config or web.config)
        /// </summary>
        public string ConfigurationFileReferencePath { get; set; }

        /// <summary>
        /// The list of settings configuration settings
        /// </summary>
        public List<ConfigurationSetting> ConfigurationSettings { get; set; }

        #endregion
    }
}